# encoding: utf-8
# @Author: zsl
# @Desc : 猜字游戏
# 在这个游戏中，你必须一个字母一个字母的猜出秘密单词。如果你猜错了一个字母，你将丢掉一条命。正如游戏名那样，你需要仔细选择字母，因为你的生命数量非常有限
# 这个猜字游戏从给定的水果单词列表中随机选择一个单词，让玩家通过猜测单个字母来猜出这个单词。
# 玩家有6次错误猜测的机会。每次猜测后，游戏会显示已猜对的字母在单词中的位置，以及还剩下多少次机会。
# 如果玩家猜对了所有字母，游戏会显示祝贺消息并结束；如果玩家用完了所有机会，游戏会显示答案并结束。
# @Date  : 2025/07/08 11:08

import random
def guess_word_game():
    words = ["apple", "banana", "cherry", "grape", "orange"]
    target_word = random.choice(words)
    guessed_letters = []
    attempts = 6

    print("欢迎来到猜字游戏！")
    print("提示：这个单词是一种水果。")
    print("_ " * len(target_word))

    while attempts > 0:
        guess = input("请输入一个字母： ").lower()

        if len(guess)!= 1 or not guess.isalpha():
            print("请输入一个有效的字母。")
            continue

        if guess in guessed_letters:
            print("你已经猜过这个字母了。")
            continue

        guessed_letters.append(guess)

        if guess in target_word:
            print("正确！")
            display_word = ""
            for letter in target_word:
                if letter in guessed_letters:
                    display_word += letter + " "
                else:
                    display_word += "_ "
            print(display_word)

            if "_" not in display_word:
                print(f"恭喜你猜对了！答案是{target_word}。")
                break
        else:
            attempts -= 1
            print(f"错误！你还有{attempts}次机会。")

    if attempts == 0:
        print(f"游戏结束。答案是{target_word}。")

if __name__ == "__main__":
    guess_word_game()
